#ifndef OHOS_NAPI_WFD_SINK_MANAGER_H
#define OHOS_NAPI_WFD_SINK_MANAGER_H

#include "wfd_sink.h"

namespace OHOS {
namespace CastEngine {
  class NapiWfdSinkManager {
    public:
      NapiWfdSinkManager(const NapiWfdSinkManager&) = delete;
      NapiWfdSinkManager& operator=(const NapiWfdSinkManager&) = delete;

      static NapiWfdSinkManager& getInstance() {
        static NapiWfdSinkManager instance;
        return instance;
      }

      std::shared_ptr<Sharing::WfdSink>& getWfdSink() {
        return nativeWfdSink_;
      }

    private:
      NapiWfdSinkManager() {}
      std::shared_ptr<Sharing::WfdSink> nativeWfdSink_;
  };   
} // namespace CastEngine
} // namespace OHOS
#endif